﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Kokomo.Lexical.Expressions;

namespace Kokomo.PeInspector.Reflection.Query
{
	abstract class QueryExpressionBase : Expression
	{
		//public override Type Compile(ExpressionCompilationContext context)
		//{
		//    throw new NotImplementedException();
		//}

		//protected override ExpressionResult ExecuteCore(ExpressionEvaluationContext context, ExpressionExecutionMode mode)
		//{
		//    throw new NotImplementedException();
		//}

		public QueryClause Source { get; private set; }

		protected QueryExpressionBase(
			QueryClause source
			)
		{
			if (source == null) throw new ArgumentNullException("source");
			this.Source = source;
		}
	}
}
